The present invention relates generally to communication networks, and, more particularly, to domain name resolution in a network having multiple overlapping address domains.
In today""s information age, communication networks are increasingly used for transferring information among a multitude of communication devices. As demand for communication services continues to grow, the demand on these communication networks for carrying increasing amounts of information at increasing speeds continues to grow. Therefore, communication networks are evolving to more efficiently handle these increased demands.
In a common networking model, a large communication network is typically constructed by segregating the multitude of communication devices into a number of subnetworks, and internetworking the subnetworks over a high-speed backbone network. In such a communication network, each communication device is typically assigned a network address that is used for routing packets between a source communication device and a destination communication device within the communication network. In order to permit efficient use of these network addresses, the communication network may be logically divided into multiple address domains. Network addresses are required to be unique within a particular address domain, but are not required to be unique across multiple address domains.
Before a packet can be transmitted from a source host in a source address domain to a destination host in a destination address domain, the source host must obtain the network address of the destination host. One way for the source host to obtain the network address of the destination host is through domain name resolution. Specifically, the source host is provided with a domain name that is associated with the destination host. The source host transmits a domain name resolution request message to a domain name system server, which translates the domain name into the network address of the destination host.
Unfortunately, when the communication network is logically divided into multiple address domains having overlapping network addresses, the network address of the destination host may map to multiple communication devices, in which case the network address does not uniquely identify one communication device within the communication network. Such an overlapping network address cannot be used as the destination address of a packet because it is ambiguous as to the destination communication device for the packet.
Thus, a need has remained for a domain name resolution technique for resolving ambiguous network addresses across multiple overlapping address domains.
In accordance with one aspect of the invention, the destination host domain name is resolved into a unique destination host global address by first resolving the destination host domain name into its corresponding destination host local address, and then translating the destination host local address into the destination host global address.
In accordance with another aspect of the invention, a domain name system proxy uses a domain name system server in a destination address domain to obtain a destination host local address corresponding to a destination host domain name, and then uses a network address translator to obtain a destination host global address corresponding to the destination host local address. The destination host global address is preferably specific to a source address domain from which the domain name resolution is initiated, specifically by a source host in the source address domain.